<!-- 提交申请 -->

<script lang="ts" setup>
import { ref, reactive, onMounted, h, watch } from 'vue'
import {
  NSpace,
  NButton,
  type FormInst,
  NForm,
  NFormItem,
  NInput,
  NSelect,
  type FormRules,
  useMessage,
  NScrollbar,
  NSpin,
  NDatePicker,
  NUpload,
  NDataTable,
  NPagination,
  NIcon,
  type DataTableColumns,
  NModal,
  type UploadFileInfo,
  NPopover
} from 'naive-ui'
import { sendRequest } from '@/utils/api'
import FixedAction from '@/components/FixedAction.vue'
import { keysOf } from '@/utils/object'
import VDialogContent from '@/views/OA/Common/DialogContent.vue'
import router from '@/router'
import { useRoute } from 'vue-router'
import { imgDefault, preUrlImg } from '@/utils/errordefaultImg'
import UploadFileV2 from '@/views/common/UploadFileV2.vue'
import TableView from '@/components/TableView.vue'
import { useThingStore } from '@/stores/addThing'
import VDisOrEnd from '@/views/OA/Common/DisOrEnd.vue'
import { ApprovalFilled, ErrorRound } from '@vicons/material'

const props = defineProps({
  id: { type: String, default: () => null },
  typeShow: { type: Number, default: () => 0 },
  arr: { type: Array, default: () => 0 }
})
const route = useRoute()
const thingStore = useThingStore()
const rowKey: any = (row: any) => row.subItemCode || ''
const tableData: any = ref([])
const tableData1 = ref()
const message = useMessage()
const baseFormRef = ref<FormInst | null>(null)
const loading = ref(false)
const form: any = reactive({
  orderTypeCode: null,
  backOrder: {
    //回库单
    backDate: null, //回库日期
    backNumber: null, //回库单号
    fileIds: null,
    fileIdFiles: [], //附件
    humidity: null, // 保管相对湿度
    notes: null, //保管注意事项
    receiveUser: null, //接收人
    temperature: null, // 保管适宜温度
    transferUser: null //移交人
  },
  cancelOrder: {
    //注销单
    cancelDate: null, //注销日期
    cancelName: null, //注销凭证名称
    cancelNumber: null, //注销编号
    docNumber: null, //注销批准文号
    fileIds: null,
    fileIdFiles: [], //附件ids
    notes: null, //备注
    reason: null //注销原因
  },
  cleanOrder: {
    //消毒单
    cleanDate: null, //清洗消毒日期
    cleanName: null, //清洗消毒单名称
    cleanNumber: null, //清洗消毒单号
    cleanUser: null, //清洗消毒负责人
    fileIds: null,
    fileIdFiles: [], //附件ids
    notes: null //备注
  },
  damagedOrder: {
    //受损单
    damagedName: null, //单据名称
    damagedNumber: null, //保护修复单号
    fileIds: null,
    fileIdFiles: [], //附件ids
    notes: null //备注
  },
  moveOrder: {
    //移库单
    fileIds: null,
    fileIdFiles: [], //附件ids
    humidity: null, //保管相对湿度
    moveDate: null, //移库日期
    moveDept: null, //移动部门
    moveNumber: null, //移动单号
    moveUser: null, //移动人
    notes: null, //保管注意事项
    reason: null, //移动原因
    temperature: null //保管适宜温度
  },
  outOrder: {
    //出库单
    destinationCode: null, //去向
    exhibition: null, //展陈
    extractReason: null, //提取原因
    extractUnit: null, //提取部门
    extractUser: null, //提取人
    fileIds: null,
    fileIdFiles: [], //附件ids
    outDate: null, //出库日期
    outNumber: null, //出库单号
    ratifyNo: null, //批准文号
    returnDate: null //归还日期
  },
  repairOrder: {
    destinationCode: null, //去向
    fileIds: null,
    fileIdFiles: [], //附件ids
    notes: null, //备注
    repairDate: null, //保护修复日期
    repairName: null, //保护修复单标题
    repairNumber: null, //保护修复单号
    repairTypeCode: null //保护修复类型
  },
  subItemCodeList: null //工单类型
})
const dataTrue: any = ref([])
const paginationReactive = reactive({
  page: 1,
  pageSize: 10,
  showSizePicker: true,
  pageSizes: [10, 20, 50, 100, 500],
  itemCount: 0,
  onChange: (page: number) => {
    paginationReactive.page = page
    tableData.value = dataTrue.value?.slice(
      paginationReactive.pageSize * (paginationReactive.page - 1),
      paginationReactive.pageSize * (paginationReactive.page - 1) + paginationReactive.pageSize
    )
  },
  onUpdatePageSize: (pageSize: number) => {
    paginationReactive.pageSize = pageSize
    paginationReactive.page = 1
    tableData.value = dataTrue.value?.slice(0, pageSize)
  }
})
const handleUpdateFileList = (e: UploadFileInfo[], name: any) => {
  form[name].fileIdFiles = e
  // @ts-ignore
  form[name].fileIds = e.map((it) => it.file?.remoteId).join(',')
}
const columns: DataTableColumns = [
  {
    type: 'selection',
    width: '1rem'
  },
  {
    title: '藏品名称',
    key: 'itemName',
    width: '5rem',
    align: 'center'
  },
  {
    title: '馆藏码',
    key: 'assetCode',
    width: '5rem',
    align: 'center'
  },
  {
    title: '征集方式',
    key: 'collectTypeName',
    width: '10rem',
    align: 'center'
  },
  {
    title: '类型',
    key: 'itemTypeName',
    width: '10rem',
    align: 'center'
  },
  {
    title: '入库位置',
    key: 'positionName',
    width: '10rem',
    align: 'center'
    // render: (e: any) => {
    //   return (
    //     (e.firstLevelName || '') +
    //     ' ' +
    //     (e.secondLevelName || '') +
    //     ' ' +
    //     (e.threeLevelName || '') +
    //     ' ' +
    //     (e.fourthLevelName || '') +
    //     ' ' +
    //     (e.fifthLevelName || '') +
    //     ' ' +
    //     (e.sixthLevelName || '')
    //   )
    // }
  },
  {
    title: '操作',
    key: 'action',
    width: '10rem',
    align: 'center',
    fixed: 'right',
    render: (e: any) => [
      h(
        NButton,
        {
          type: 'primary',
          quaternary: true,
          color: 'red',
          onClick: () => {
            deleteItemId.value = e.subItemCode
            modalVisible.value = true
          }
        },
        {
          default: () => '删除'
        }
      )
    ]
  }
]
const columns1: DataTableColumns = [
  {
    title: '类型',
    key: 'type',
    width: 50
  },
  {
    title: '人员',
    key: 'userName',
    width: 50
  },
  {
    title: '时间',
    key: 'time',
    width: 100
  },
  {
    title: '结果',
    key: 'result',
    width: 50
  },
  {
    title: '备注',
    key: 'remark',
    width: 150
  }
]
const formRules: FormRules = {
  backOrder: {
    //回库单
    backDate: {
      required: true,
      trigger: ['blur', 'change'],
      type: 'any',
      message: '不能为空'
    }, //回库日期
    backNumber: {
      required: true,
      trigger: ['blur', 'input'],
      type: 'any',
      message: '不能为空'
    }, //回库单号
    humidity: {
      required: true,
      trigger: ['blur', 'input'],
      type: 'any',
      message: '不能为空'
    }, // 保管相对湿度
    receiveUser: {
      required: true,
      trigger: ['blur', 'input'],
      type: 'any',
      message: '不能为空'
    }, //保管注意事项
    temperature: {
      required: true,
      trigger: ['blur', 'input'],
      type: 'any',
      message: '不能为空'
    }, // 保管适宜温度
    transferUser: {
      required: true,
      trigger: ['blur', 'input'],
      type: 'any',
      message: '不能为空'
    } //移交人
  },
  cancelOrder: {
    //注销单
    cancelDate: {
      required: true,
      trigger: ['blur', 'change'],
      type: 'any',
      message: '不能为空'
    }, //注销日期
    cancelName: {
      required: true,
      trigger: ['blur', 'input'],
      type: 'any',
      message: '不能为空'
    }, //注销凭证名称
    cancelNumber: {
      required: true,
      trigger: ['blur', 'input'],
      type: 'any',
      message: '不能为空'
    }, //注销编号
    docNumber: {
      required: true,
      trigger: ['blur', 'input'],
      type: 'any',
      message: '不能为空'
    } //注销批准文号
  },
  cleanOrder: {
    //消毒单
    cleanDate: {
      required: true,
      trigger: ['blur', 'change'],
      type: 'any',
      message: '不能为空'
    }, //清洗消毒日期
    cleanName: {
      required: true,
      trigger: ['blur', 'input'],
      type: 'any',
      message: '不能为空'
    }, //清洗消毒单名称
    cleanNumber: {
      required: true,
      trigger: ['blur', 'input'],
      type: 'any',
      message: '不能为空'
    } //清洗消毒单号
  },
  damagedOrder: {
    //受损单
    damagedName: {
      required: true,
      trigger: ['blur', 'input'],
      type: 'any',
      message: '不能为空'
    }, //单据名称
    damagedNumber: {
      required: true,
      trigger: ['blur', 'input'],
      type: 'any',
      message: '不能为空'
    } //保护修复单号
  },
  moveOrder: {
    //移库单
    humidity: {
      required: true,
      trigger: ['blur', 'input'],
      type: 'any',
      message: '不能为空'
    }, //保管相对湿度
    moveDate: {
      required: true,
      trigger: ['blur', 'change'],
      type: 'any',
      message: '不能为空'
    }, //移库日期
    moveDept: {
      required: true,
      trigger: ['blur', 'input'],
      type: 'any',
      message: '不能为空'
    }, //移动部门
    moveNumber: {
      required: true,
      trigger: ['blur', 'input'],
      type: 'any',
      message: '不能为空'
    }, //移动单号
    moveUser: {
      required: true,
      trigger: ['blur', 'input'],
      type: 'any',
      message: '不能为空'
    }, //移动人
    reason: {
      required: true,
      trigger: ['blur', 'input'],
      type: 'any',
      message: '不能为空'
    }, //移动原因
    temperature: {
      required: true,
      trigger: ['blur', 'input'],
      type: 'any',
      message: '不能为空'
    } //保管适宜温度
  },
  outOrder: {
    //出库单
    destinationCode: {
      required: true,
      trigger: ['blur', 'change'],
      type: 'any',
      message: '不能为空'
    }, //去向
    extractReason: {
      required: true,
      trigger: ['blur', 'input'],
      type: 'any',
      message: '不能为空'
    }, //提取原因
    extractUnit: {
      required: true,
      trigger: ['blur', 'input'],
      type: 'any',
      message: '不能为空'
    }, //提取部门
    extractUser: {
      required: true,
      trigger: ['blur', 'input'],
      type: 'any',
      message: '不能为空'
    }, //提取人
    outDate: {
      required: true,
      trigger: ['blur', 'change'],
      type: 'any',
      message: '不能为空'
    }, //出库日期
    outNumber: {
      required: true,
      trigger: ['blur', 'input'],
      type: 'any',
      message: '不能为空'
    }, //出库单号
    ratifyNo: {
      required: true,
      trigger: ['blur', 'input'],
      type: 'any',
      message: '不能为空'
    }, //批准文号
    returnDate: {
      required: true,
      trigger: ['blur', 'change'],
      type: 'any',
      message: '不能为空'
    } //归还日期
  },
  repairOrder: {
    destinationCode: {
      required: true,
      trigger: ['blur', 'change'],
      type: 'any',
      message: '不能为空'
    }, //去向
    repairDate: {
      required: true,
      trigger: ['blur', 'change'],
      type: 'any',
      message: '不能为空'
    }, //保护修复日期
    repairName: {
      required: true,
      trigger: ['blur', 'input'],
      type: 'any',
      message: '不能为空'
    }, //保护修复单标题
    repairNumber: {
      required: true,
      trigger: ['blur', 'input'],
      type: 'any',
      message: '不能为空'
    }, //保护修复单号
    repairTypeCode: {
      required: true,
      trigger: ['blur', 'change'],
      type: 'any',
      message: '不能为空'
    } //保护修复类型
  }
}
const deleteItemId = ref() //删除id
const againDelete = async () => {
  let arr: any = []
  if (deleteItemId.value) {
    arr.push(deleteItemId.value)
  } else {
    arr = arr.concat(deleteId.value)
    deleteId.value = []
  }
  paginationReactive.pageSize = 10
  paginationReactive.page = 1
  dataTrue.value = dataTrue.value.filter((it: any) => !arr.includes(it.subItemCode))
  tableData.value = dataTrue.value?.slice(0, 10)
  modalVisible.value = false
}
const configData: any = ref([])
const otherConfigData: any = ref([])
const getOptionFn = async () => {
  const [error, res] = await sendRequest({
    module: 'collectProcess',
    api: 'countCollectingByType'
  })
  if (error) return message.error(error.message)
  configData.value = res?.data.slice(0, 9)
  otherConfigData.value = res.data?.slice(9)
}
const entityId = ref()

const submit = async () => {
  const validate = await Promise.all([
    new Promise((resolve, reject) => {
      baseFormRef.value?.validate((error) => {
        if (error) return reject(error)
        resolve(true)
      })
    })
  ])

  if (!validate.every(Boolean)) return
  loading.value = true
  const [error, res] = await sendRequest({
    module: 'collectProcess',
    api: 'collectingOrderCommitOrder',
    override: {
      data: {
        ...form,
        entityId: entityId.value,
        subItemCodeList: dataTrue.value?.map((it: any) => it.subItemCode)
      }
    }
  })
  loading.value = false

  if (error) return message.error(error.message)
  if (res.code !== 0) return message.error(res.msg)
  message.success(res.msg)
  goBack()
}
// 字典下拉
const codeFn = async (code: any, refValue: any) => {
  const [error, res] = await sendRequest({
    module: 'collectProcess',
    api: 'listByParentCode',
    override: {
      params: {
        dicCode: code
      }
    }
  })
  if (error) return message.error(error.message)
  refValue.value = res?.data?.map((it: any) => {
    return { value: it.dicCode, label: it.dicName }
  })
  if (code == 'A35') {
    form.orderTypeCode = res?.data?.[0]?.dicCode
  }
}
//工单切换
const changeOrder = async (val: any) => {
  form.orderTypeCode = val
  console.log(val)
  getWorkFlow(val)
}

// 获取流程id
const hint = ref()
const workFlowList: any = ref()
const getWorkFlow = async (val: any) => {
  const [error, res] = await sendRequest({
    module: 'collectProcess',
    api: 'getWorkFlow',
    override: {
      params: {
        orderTypeCode: val
      }
    }
  })
  if (error) return
  if (res.code !== 0) return
  entityId.value = res.data.entityId
  hint.value = res.data.remark
  workFlowList.value = res.data.workFlowList?.map((it: any) => it).join(' → ')
}
// 返回
const goBack = () => {
  // history.back()
  routeReplace()
}
const statusList = ref()
const statusList31 = ref()
const statusList30 = ref()
const deleteId = ref()
const modalVisible = ref(false)
const rowKeysChange = (v: any) => {
  deleteId.value = v
}
const BatchDelete = () => {
  if (null == deleteId.value || deleteId.value.length === 0)
    return message.warning('请至少选择一项！')
  modalVisible.value = true
}
//下载
function download(headers: any, data: any, name?: string) {
  const val = headers['content-disposition']?.match(/(?<=filename=)(.*)/)
  let filename = val ? decodeURIComponent(val[0]) : name + '导出.xlsx'
  if (!filename.includes('xlsx')) {
    filename = filename.replace('xls', 'xlsx')
  }
  const a = document.createElement('a')
  let binaryData = []
  binaryData.push(data)
  a.href = window.URL.createObjectURL(new Blob(binaryData))
  a.download = filename
  a.click()
  window.URL.revokeObjectURL(a.href)
}
const exportLoading = ref(false)
async function handleDownload() {
  exportLoading.value = true
  const [error, res, headers] = await sendRequest({
    module: 'collectProcess',
    api: 'downloadTemplate'
  })
  if (error) return message.error(error.message)
  download(headers, res)
  exportLoading.value = false
}
const queryTableData = async (resetPage = false, file: any) => {
  if (resetPage) paginationReactive.page = 1
  const [error, res] = await sendRequest({
    module: 'collectProcess',
    api: 'importCollectingItems',
    override: {
      data: {
        file: file
      }
    }
  })
  loading.value = false
  if (error) return message.error(error.message)
  if (res.code !== 0) return message.error(res.msg)
  let flag = false
  res.data?.map((it: any) => {
    if (dataTrue.value.filter((i: any) => i.assetCode == it.assetCode).length == 0)
      dataTrue.value.push(it)
    else flag = true
  })
  if (flag) {
    message.error('列表中已存在征集品，请勿重复添加！')
  }

  // dataTrue.value = [...dataTrue.value, ...res.data]
  tableData.value = dataTrue.value?.slice(0, 10)
  paginationReactive.itemCount = dataTrue.value.length
}
async function handleUploadChange(fileList: UploadFileInfo[]) {
  form.file = fileList[fileList.length - 1]?.file
  queryTableData(false, fileList[fileList.length - 1]?.file)
}
const add = () => {
  router.push({
    path: '/collection/process/pillManage/addInfoList',
    query: {redirect: router.currentRoute.value.fullPath}
  })
}
const editId: any = ref()
watch(
  () => props.arr,
  async () => {
    if (props.arr) {
      let flag = false
      let dataArr = dataTrue.value
      thingStore.thingList.map((it: any) => {
        if (dataTrue.value.filter((i: any) => it.assetCode == i.assetCode).length == 0) {
          dataTrue.value.push(it)
        } else {
          flag = true
        }
      })
      if (flag) {
        message.error('列表中已存在征集品，请勿重复添加！')
      }
      editId.value = props.id
      tableData.value = dataTrue.value?.slice(0, 10)
      paginationReactive.itemCount = dataTrue.value?.length
      // tableData.value=tableData.value.concat(thingStore.thingList)
      thingStore.thingList = []
    }
  },
  { deep: true, immediate: true }
)
const getDetail = async () => {
  await codeFn('A35', statusList) //审批清单 A35
  codeFn('A57', statusList31) //保护修复类型,关联字典A31
  codeFn('A36', statusList30) //去向,关联字典A36
  keysOf(form).forEach((e) => {
    if (e == 'orderTypeCode') return
    if (!form[e]) return
    keysOf(form[e])?.forEach((m) => {
      if (m == 'fileIdFiles') {
        form[e][m] = []
        return
      } else form[e][m] = null
    })
  })
  getOptionFn()
  //出库单 A3501 回库单 A3502 移库单 A3503 消毒单 A3504  修复单 A3505 受损单 A3506  注销单 A3507
  if (thingStore.thingList) {
    let dataArr = dataTrue.value
    dataTrue.value = dataArr.concat(thingStore.thingList)
    editId.value = props.id
    tableData.value = dataTrue.value?.slice(0, 10)
    // tableData.value=tableData.value.concat(thingStore.thingList)
    thingStore.thingList = []
  }
  // 表格数据没有掉接口
  // sendRequest({
  //   module: 'collectProcess',
  //   api: 'listCollecting',
  //   override: {
  //     params: {
  //       limit: paginationReactive.pageSize,
  //       page: paginationReactive.page,
  //     }
  //   }
  // }).then(async ([err, res]) => {
  //   if (err) return
  //   if (res.code !== 0) return message.error(res.msg)
  //   tableData.value = res.data.list
  //   dataTrue.value= res.data.list
  //   paginationReactive.itemCount = res.data.totalCount
  // })
  // 修改回显
  if (props?.id) {
    sendRequest({
      module: 'collectProcess',
      api: 'orderBaseInfo',
      override: {
        params: {
          id: props?.id
        }
      }
    }).then(async ([err, res]) => {
      if (err) return
      getWorkFlow(res.data.orderTypeCode)
      tableData1.value = res.data?.workflowInfoVo?.approvalRecordsList || []
      keysOf(res.data).forEach((e) => {
        form[e] = res.data[e] as never
      })
    })
  }
}
const flat: any = ref(false)
watch(
  () => route.path,
  () => {
    if (route.path == '/collection/process/pillManage/submitFile') {
      getDetail()
    }
    if (route.query.flat) flat.value = route.query.flat
  },
  { deep: true, immediate: true }
)

const dateDisabledBefore = (ts: any, data: any) => {
  if (data) {
    let time = new Date(data).getTime()
    return ts > time
  }
  return false
}
const dateDisabledAfter = (ts: number, data: any) => {
  let time = new Date(data).getTime()
  return ts < time - 86400000
}
onMounted(async () => {
  await getDetail()
  await getWorkFlow(form.orderTypeCode)
})
</script>

<template>
  <DetailFormProvider>
  <div class="main">
    <div class="form_content">
      <NScrollbar>
        <NSpin :show="false">
          <div class="content">
            <div v-if="!editId">
              <!-- <div class="topTitle" style="margin-bottom: 10px;">审核流程</div>
              <div style="height:10px"></div>
              <span class="bd-card"
                style="color: #79bb92;padding: 20px !important; font-size: 18rem; margin:10px,0rem;">
                {{ workFlowList?.length ? workFlowList : '暂无适配流程' }}
              </span>
              <div style="height:10px"></div> -->
              <!-- <basicInfo :id="props?.code"/> -->
              <div
                class="progressHint"
                v-if="hint"
              >
                <NIcon
                  size="20"
                  class="iconStyle"
                >
                  <ErrorRound />
                </NIcon>
                <div
                  style="white-space: pre-wrap"
                  v-html="hint"
                ></div>
              </div>
              <div class="progress">
                <div style="display: flex; width: auto; padding: 0 15px">
                  <NIcon
                    :size="20"
                    class="iconStyle"
                  >
                    <ApprovalFilled />
                  </NIcon>
                  <span>审批流程</span>
                </div>
                <span
                  style="font-size: 18rem; flex: 1"
                  :style="{ color: !workFlowList ? 'red' : '#79bb92' }"
                >
                  {{ workFlowList ? workFlowList : '暂无配置流程，请联系管理员进行配置' }}
                </span>
              </div>

              <NSpace style="margin-top: 20px">
                <!-- 审批清单 -->
                <span style="font-size: 16rem">选择发起审批的清单:</span>
                <NSelect
                  :options="statusList"
                  v-model:value="form.orderTypeCode"
                  placeholder="图书"
                  class="inputWH"
                  @update-value="changeOrder"
                />
              </NSpace>
            </div>
            <VDisOrEnd
              v-if="flat"
              :id="form.workflowInfoVo?.fromId"
              :assigneeFlag="form.workflowInfoVo?.assigneeFlag"
              typeName="工单审批"
            ></VDisOrEnd>
            <div class="topTitle">基本信息</div>
            <div class="bd-content">
              <DetailFormProvider :disabled="editId === null && editId === undefined">
                <!-- 出库单 1-->
                <NForm
                  :model="form"
                  class="bd-card"
                  :rules="formRules"
                  ref="baseFormRef"
                  label-placement="left"
                  require-mark-placement="left"
                  label-width="140"
                  :disabled="editId"
                  v-if="form.orderTypeCode == 'A3501'"
                >
                  <NSpace>
                    <NFormItem
                      label="出库单号"
                      path="outOrder.outNumber"
                      v-if="editId"
                    >
                      <NInput
                        v-model:value="form.outOrder.outNumber"
                        class="inputWH"
                      />
                    </NFormItem>
                    <NFormItem
                      label="出库日期："
                      path="outOrder.outDate"
                    >
                      <NDatePicker
                        placeholder="请选择出库日期"
                        type="date"
                        value-format="yyyy-MM-dd"
                        :is-date-disabled="(e: any) => dateDisabledBefore(e, form.outOrder.returnDate)"
                        v-model:formatted-value="form.outOrder.outDate"
                        :input-readonly="true"
                        class="inputWH"
                        clearable
                      />
                    </NFormItem>
                    <NFormItem
                      label="归还日期："
                      path="outOrder.returnDate"
                    >
                      <NDatePicker
                        placeholder="请选择归还日期"
                        type="date"
                        value-format="yyyy-MM-dd"
                        :is-date-disabled="(e: any) => dateDisabledAfter(e, form.outOrder.outDate)"
                        v-model:formatted-value="form.outOrder.returnDate"
                        :input-readonly="true"
                        class="inputWH"
                        clearable
                      />
                    </NFormItem>
                  </NSpace>
                  <NSpace>
                    <NFormItem
                      label="提取部门："
                      path="outOrder.extractUnit"
                    >
                      <NInput
                        placeholder="请输入提取部门"
                        v-model:value="form.outOrder.extractUnit"
                        class="inputWH"
                      />
                    </NFormItem>
                    <NFormItem
                      label="提取人："
                      path="outOrder.extractUser"
                    >
                      <NInput
                        placeholder="请输入提取人"
                        v-model:value="form.outOrder.extractUser"
                        class="inputWH"
                      />
                    </NFormItem>
                    <NFormItem
                      label="提取原因："
                      path="outOrder.extractReason"
                    >
                      <NInput
                        placeholder="请输入提取原因"
                        v-model:value="form.outOrder.extractReason"
                        class="inputWH"
                      />
                    </NFormItem>
                  </NSpace>
                  <NSpace>
                    <NFormItem
                      label="批准文号："
                      path="outOrder.ratifyNo"
                    >
                      <NInput
                        placeholder="请输入批准文号"
                        v-model:value="form.outOrder.ratifyNo"
                        class="inputWH"
                      />
                    </NFormItem>
                    <NFormItem
                      label="去向："
                      path="outOrder.destinationCode"
                    >
                      <NSelect
                        :options="statusList30"
                        v-model:value="form.outOrder.destinationCode"
                        placeholder="请选择去向"
                        class="inputWH"
                      />
                    </NFormItem>
                    <NFormItem
                      label="展陈："
                      path="outOrder.exhibition"
                      v-if="form.outOrder.destinationCode == 'A3601'"
                    >
                      <NInput
                        placeholder="请输入展陈"
                        v-model:value="form.outOrder.exhibition"
                        class="inputWH"
                      />
                    </NFormItem>
                  </NSpace>
                  <NFormItem
                    label="附件："
                    path="outOrder.fileIds"
                  >
                    <UploadFileV2
                      :file-list="form.outOrder.fileIdFiles"
                      @update:file-list="(e: any) => handleUpdateFileList(e, 'outOrder')"
                    >
                      <template #trigger="{ handleClick }">
                        <n-button
                          @click="handleClick"
                          color="#6CB187"
                          ghost
                          size="small"
                        >
                          点击上传
                        </n-button>
                      </template>
                    </UploadFileV2>
                    <!-- <NUpload style="padding-top: 5px">
                    <NButton
                      color="#6CB187"
                      ghost
                      size="small"
                    >
                      点击上传
                    </NButton>
                  </NUpload> -->
                  </NFormItem>
                </NForm>
                <!-- 回库单-->
                <NForm
                  :model="form"
                  class="bd-card"
                  :rules="formRules"
                  ref="baseFormRef"
                  label-placement="left"
                  require-mark-placement="left"
                  label-width="140"
                  :disabled="editId"
                  v-if="form.orderTypeCode == 'A3502'"
                >
                  <NSpace>
                    <NFormItem
                      label="回库编号："
                      path="backOrder.backNumber"
                      v-if="editId"
                    >
                      <NInput
                        v-model:value="form.backOrder.backNumber"
                        class="inputWH"
                      />
                    </NFormItem>
                    <NFormItem
                      label="回库日期："
                      path="backOrder.backDate"
                    >
                      <NDatePicker
                        placeholder="请选择回库日期"
                        type="date"
                        value-format="yyyy-MM-dd"
                        class="inputWH"
                        v-model:formatted-value="form.backOrder.backDate"
                        :input-readonly="true"
                        clearable
                      />
                    </NFormItem>
                    <NFormItem
                      label="移交人："
                      path="backOrder.transferUser"
                    >
                      <NInput
                        placeholder="请输入移交人"
                        v-model:value="form.backOrder.transferUser"
                        class="inputWH"
                      />
                    </NFormItem>
                  </NSpace>
                  <NSpace>
                    <NFormItem
                      label="接收人："
                      path="backOrder.receiveUser"
                    >
                      <NInput
                        placeholder="请输入接收人"
                        v-model:value="form.backOrder.receiveUser"
                        class="inputWH"
                      />
                    </NFormItem>
                    <NFormItem
                      label="保管适宜温度："
                      path="backOrder.temperature"
                    >
                      <NInput
                        placeholder="请输入保管适宜温度"
                        v-model:value="form.backOrder.temperature"
                        class="inputWH"
                      />
                    </NFormItem>
                    <NFormItem
                      label="保管相对湿度："
                      path="backOrder.humidity"
                    >
                      <NInput
                        placeholder="请输入保管相对湿度"
                        v-model:value="form.backOrder.humidity"
                        class="inputWH"
                      />
                    </NFormItem>
                  </NSpace>
                  <NSpace>
                    <NFormItem
                      label="保管注意事项："
                      path="backOrder.notes"
                    >
                      <NInput
                        placeholder="请输入保管注意事项"
                        v-model:value="form.backOrder.notes"
                        class="inputWH"
                      />
                    </NFormItem>
                    <NFormItem
                      label="附件："
                      path="backOrder.fileIds"
                    >
                      <UploadFileV2
                        :file-list="form.backOrder.fileIdFiles"
                        @update:file-list="(e: any) => handleUpdateFileList(e, 'backOrder')"
                      >
                        <template #trigger="{ handleClick }">
                          <n-button
                            @click="handleClick"
                            color="#6CB187"
                            ghost
                            size="small"
                          >
                            点击上传
                          </n-button>
                        </template>
                      </UploadFileV2>
                      <!-- <NUpload
                      style="padding-top: 5px"
                      v-model:value="form.backOrder.fileIds"
                    >
                      <NButton
                        color="#6CB187"
                        ghost
                        size="small"
                      >
                        点击上传
                      </NButton> -->
                      <!-- </NUpload> -->
                    </NFormItem>
                  </NSpace>
                </NForm>
                <!-- 移库单-->
                <NForm
                  :model="form"
                  :rules="formRules"
                  ref="baseFormRef"
                  class="bd-card"
                  label-placement="left"
                  require-mark-placement="left"
                  label-width="140"
                  :disabled="editId"
                  v-if="form.orderTypeCode == 'A3503'"
                >
                  <NSpace>
                    <NFormItem
                      label="移库编号："
                      v-if="editId"
                      path="moveOrder.moveNumber"
                    >
                      <NInput
                        v-model:value="form.moveOrder.moveNumber"
                        class="inputWH"
                      />
                    </NFormItem>
                    <NFormItem
                      label="移库日期："
                      path="moveOrder.moveDate"
                    >
                      <NDatePicker
                        placeholder="请选择移库日期"
                        type="date"
                        value-format="yyyy-MM-dd"
                        v-model:formatted-value="form.moveOrder.moveDate"
                        :input-readonly="true"
                        class="inputWH"
                        clearable
                      />
                    </NFormItem>
                    <NFormItem
                      label="移动部门："
                      path="moveOrder.moveDept"
                    >
                      <NInput
                        placeholder="请输入移动部门"
                        v-model:value="form.moveOrder.moveDept"
                        class="inputWH"
                      />
                    </NFormItem>
                  </NSpace>
                  <NSpace>
                    <NFormItem
                      label="移动人："
                      path="moveOrder.moveUser"
                    >
                      <NInput
                        placeholder="请输入移动人"
                        v-model:value="form.moveOrder.moveUser"
                        class="inputWH"
                      />
                    </NFormItem>
                    <NFormItem
                      label="移动原因："
                      path="moveOrder.reason"
                    >
                      <NInput
                        placeholder="请输入移动原因"
                        v-model:value="form.moveOrder.reason"
                        class="inputWH"
                      />
                    </NFormItem>
                    <NFormItem
                      label="保管适宜温度："
                      path="moveOrder.temperature"
                    >
                      <NInput
                        placeholder="请输入保管适宜温度"
                        v-model:value="form.moveOrder.temperature"
                        class="inputWH"
                      />
                    </NFormItem>
                  </NSpace>
                  <NSpace>
                    <NFormItem
                      label="保管相对湿度："
                      path="moveOrder.humidity"
                    >
                      <NInput
                        placeholder="请输入保管相对湿度"
                        v-model:value="form.moveOrder.humidity"
                        class="inputWH"
                      />
                    </NFormItem>
                    <NFormItem
                      label="保管注意事项："
                      path="moveOrder.notes"
                    >
                      <NInput
                        placeholder="请输入保管注意事项"
                        v-model:value="form.moveOrder.notes"
                        class="inputWH"
                      />
                    </NFormItem>
                    <NFormItem
                      label="附件："
                      path="moveOrder.fileIds"
                    >
                      <UploadFileV2
                        :file-list="form.moveOrder.fileIdFiles"
                        @update:file-list="(e: any) => handleUpdateFileList(e, 'moveOrder')"
                      >
                        <template #trigger="{ handleClick }">
                          <n-button
                            @click="handleClick"
                            color="#6CB187"
                            ghost
                            size="small"
                          >
                            点击上传
                          </n-button>
                        </template>
                      </UploadFileV2>
                    </NFormItem>
                  </NSpace>
                </NForm>
                <!-- 消毒单-->
                <NForm
                  :model="form"
                  :rules="formRules"
                  ref="baseFormRef"
                  class="bd-card"
                  label-placement="left"
                  require-mark-placement="left"
                  label-width="140"
                  :disabled="editId"
                  v-if="form.orderTypeCode == 'A3504'"
                >
                  <NSpace>
                    <NFormItem
                      label="清洗消毒单号："
                      v-if="editId"
                      path="cleanOrder.cleanNumber"
                    >
                      <NInput
                        v-model:value="form.cleanOrder.cleanNumber"
                        class="inputWH"
                      />
                    </NFormItem>
                    <NFormItem
                      label="清洗消毒单名称："
                      path="cleanOrder.cleanName"
                    >
                      <NInput
                        placeholder="请输入清洗消毒单名称"
                        v-model:value="form.cleanOrder.cleanName"
                        class="inputWH"
                      />
                    </NFormItem>

                    <NFormItem
                      label="清洗消毒日期："
                      path="cleanOrder.cleanDate"
                    >
                      <NDatePicker
                        placeholder="请选择清洗消毒日期"
                        type="date"
                        value-format="yyyy-MM-dd"
                        v-model:formatted-value="form.cleanOrder.cleanDate"
                        :input-readonly="true"
                        class="inputWH"
                        clearable
                      />
                    </NFormItem>
                  </NSpace>
                  <NSpace>
                    <NFormItem
                      label="清洗消毒负责人："
                      path="cleanOrder.cleanUser"
                    >
                      <NInput
                        placeholder="请输入清洗消毒负责人"
                        v-model:value="form.cleanOrder.cleanUser"
                        class="inputWH"
                      />
                    </NFormItem>
                    <NFormItem
                      label="备注："
                      path="cleanOrder.notes"
                    >
                      <NInput
                        placeholder="请输入备注"
                        v-model:value="form.cleanOrder.notes"
                        class="inputWH"
                      />
                    </NFormItem>
                    <NFormItem
                      label="附件："
                      path="cleanOrder.fileIdFiles"
                    >
                      <UploadFileV2
                        :file-list="form.cleanOrder.fileIdFiles"
                        @update:file-list="(e: any) => handleUpdateFileList(e, 'cleanOrder')"
                      >
                        <template #trigger="{ handleClick }">
                          <n-button
                            @click="handleClick"
                            color="#6CB187"
                            ghost
                            size="small"
                          >
                            点击上传
                          </n-button>
                        </template>
                      </UploadFileV2>
                      <!-- <NUpload
                      style="padding-top: 5px"
                      class="inputWH"
                    >
                      <NButton
                        color="#6CB187"
                        ghost
                        size="small"
                      >
                        点击上传
                      </NButton>
                    </NUpload> -->
                    </NFormItem>
                  </NSpace>
                </NForm>
                <!-- 修复单-->
                <NForm
                  :model="form"
                  :rules="formRules"
                  class="bd-card"
                  ref="baseFormRef"
                  label-placement="left"
                  require-mark-placement="left"
                  label-width="140"
                  :disabled="editId"
                  v-if="form.orderTypeCode == 'A3505'"
                >
                  <NSpace>
                    <NFormItem
                      label="保护修复单号："
                      path="repairOrder.repairNumber"
                      v-if="editId"
                    >
                      <NInput
                        v-model:value="form.repairOrder.repairNumber"
                        class="inputWH"
                      />
                    </NFormItem>
                    <NFormItem
                      label="保护修复单标题："
                      path="repairOrder.repairName"
                    >
                      <NInput
                        placeholder="请输入保护修复单标题"
                        v-model:value="form.repairOrder.repairName"
                        class="inputWH"
                      />
                    </NFormItem>
                    <NFormItem
                      label="保护修复类型："
                      path="repairOrder.repairTypeCode"
                    >
                      <NSelect
                        :options="statusList31"
                        v-model:value="form.repairOrder.repairTypeCode"
                        placeholder="请选择保护修复类型"
                        class="inputWH"
                      />
                    </NFormItem>
                  </NSpace>
                  <NSpace>
                    <NFormItem
                      label="去向："
                      path="repairOrder.destinationCode"
                    >
                      <NSelect
                        :options="statusList30"
                        v-model:value="form.repairOrder.destinationCode"
                        placeholder="请选择去向"
                        class="inputWH"
                      />
                    </NFormItem>

                    <NFormItem
                      label="保护修复日期："
                      path="repairOrder.repairDate"
                    >
                      <NDatePicker
                        placeholder="请选择保护修复日期"
                        type="date"
                        value-format="yyyy-MM-dd"
                        v-model:formatted-value="form.repairOrder.repairDate"
                        :input-readonly="true"
                        class="inputWH"
                        clearable
                      />
                    </NFormItem>
                    <NFormItem
                      label="备注："
                      path="repairOrder.notes"
                    >
                      <NInput
                        placeholder="请输入备注"
                        v-model:value="form.repairOrder.notes"
                        class="inputWH"
                      />
                    </NFormItem>
                  </NSpace>
                  <NSpace>
                    <NFormItem
                      label="附件："
                      path="repairOrder.fileIds"
                    >
                      <UploadFileV2
                        :file-list="form.repairOrder.fileIdFiles"
                        @update:file-list="(e: any) => handleUpdateFileList(e, 'repairOrder')"
                      >
                        <template #trigger="{ handleClick }">
                          <n-button
                            @click="handleClick"
                            color="#6CB187"
                            ghost
                            size="small"
                          >
                            点击上传
                          </n-button>
                        </template>
                      </UploadFileV2>
                      <!-- <NUpload style="padding-top: 5px">
                      <NButton
                        color="#6CB187"
                        ghost
                        size="small"
                      >
                        点击上传
                      </NButton>
                    </NUpload> -->
                    </NFormItem>
                  </NSpace>
                </NForm>
                <!-- 受损单 -->
                <NForm
                  :model="form"
                  :rules="formRules"
                  ref="baseFormRef"
                  class="bd-card"
                  label-placement="left"
                  require-mark-placement="left"
                  label-width="140"
                  :disabled="editId"
                  v-if="form.orderTypeCode == 'A3506'"
                >
                  <NSpace>
                    <NFormItem
                      label="保护修复单号："
                      path="damagedOrder.name"
                      v-if="editId"
                    >
                      <NInput
                        v-model:value="form.damagedOrder.damagedNumber"
                        class="inputWH"
                      />
                    </NFormItem>
                    <NFormItem
                      label="单据名称："
                      path="damagedOrder.damagedName"
                    >
                      <NInput
                        placeholder="请输入单据名称"
                        v-model:value="form.damagedOrder.damagedName"
                        class="inputWH"
                      />
                    </NFormItem>

                    <NFormItem
                      label="附件："
                      path="damagedOrder.name"
                    >
                      <UploadFileV2
                        :file-list="form.damagedOrder.fileIdFiles"
                        @update:file-list="(e: any) => handleUpdateFileList(e, 'damagedOrder')"
                      >
                        <template #trigger="{ handleClick }">
                          <n-button
                            @click="handleClick"
                            color="#6CB187"
                            ghost
                            size="small"
                          >
                            点击上传
                          </n-button>
                        </template>
                      </UploadFileV2>
                      <!-- <NUpload style="padding-top: 5px">
                      <NButton
                        color="#6CB187"
                        ghost
                        size="small"
                      >
                        点击上传
                      </NButton>
                    </NUpload> -->
                    </NFormItem>
                  </NSpace>
                  <NSpace>
                    <NFormItem
                      label="备注："
                      path="damagedOrder.notes"
                    >
                      <NInput
                        placeholder="请输入备注"
                        v-model:value="form.damagedOrder.notes"
                        class="inputWH"
                      />
                    </NFormItem>
                  </NSpace>
                </NForm>
                <!-- 注销单 -->
                <NForm
                  :model="form"
                  :rules="formRules"
                  class="bd-card"
                  ref="baseFormRef"
                  label-placement="left"
                  require-mark-placement="left"
                  label-width="140"
                  :disabled="editId"
                  v-if="form.orderTypeCode == 'A3507'"
                >
                  <NSpace>
                    <NFormItem
                      label="注销编号："
                      v-if="editId"
                      path="cancelOrder.cancelNumber"
                    >
                      <NInput
                        v-model:value="form.cancelOrder.cancelNumber"
                        class="inputWH"
                      />
                    </NFormItem>
                    <NFormItem
                      label="注销日期："
                      path="cancelOrder.cancelDate"
                    >
                      <NDatePicker
                        placeholder="请选择注销日期"
                        type="date"
                        value-format="yyyy-MM-dd"
                        v-model:formatted-value="form.cancelOrder.cancelDate"
                        :input-readonly="true"
                        class="inputWH"
                        clearable
                      />
                    </NFormItem>
                    <NFormItem
                      label="注销凭证名称："
                      path="cancelOrder.cancelName"
                    >
                      <NInput
                        placeholder="请输入注销凭证名称"
                        v-model:value="form.cancelOrder.cancelName"
                        class="inputWH"
                      />
                    </NFormItem>
                  </NSpace>
                  <NSpace>
                    <NFormItem
                      label="注销批准文号："
                      path="cancelOrder.docNumber"
                    >
                      <NInput
                        placeholder="请输入注销批准文号"
                        v-model:value="form.cancelOrder.docNumber"
                        class="inputWH"
                      />
                    </NFormItem>
                    <NFormItem
                      label="注销原因："
                      path="cancelOrder.reason"
                    >
                      <NInput
                        placeholder="请输入注销原因"
                        v-model:value="form.cancelOrder.reason"
                        class="inputWH"
                      />
                    </NFormItem>
                    <NFormItem
                      label="附件："
                      path="cancelOrder.fileIds"
                    >
                      <UploadFileV2
                        :file-list="form.cancelOrder.fileIdFiles"
                        @update:file-list="(e: any) => handleUpdateFileList(e, 'cancelOrder')"
                      >
                        <template #trigger="{ handleClick }">
                          <n-button
                            @click="handleClick"
                            color="#6CB187"
                            ghost
                            size="small"
                          >
                            点击上传
                          </n-button>
                        </template>
                      </UploadFileV2>
                      <!-- <NUpload style="padding-top: 5px">
                      <NButton
                        color="#6CB187"
                        ghost
                        size="small"
                      >
                        点击上传
                      </NButton>
                    </NUpload> -->
                    </NFormItem>
                  </NSpace>
                  <NSpace>
                    <NFormItem
                      label="备注："
                      path="cancelOrder.notes"
                    >
                      <NInput
                        placeholder="请输入备注"
                        v-model:value="form.cancelOrder.notes"
                        class="inputWH"
                      />
                    </NFormItem>
                  </NSpace>
                </NForm>
              </DetailFormProvider>
            </div>
            <NSpace
              justify="space-between"
              style="margin-top: 20rem"
            >
              <div class="topTitle">藏品信息</div>
              <NSpace v-if="!editId && props.typeShow != 1">
                <NUpload
                  @update:file-list="handleUploadChange"
                  :show-file-list="false"
                >
                  <NButton
                    type="warning"
                    style="width: 115px"
                    class="btnExport"
                  >
                    模板导入
                  </NButton>
                </NUpload>
                <NButton
                  type="warning"
                  style="width: 115px"
                  class="btnDownload"
                  @click="handleDownload"
                >
                  模板下载
                </NButton>
                <NButton
                  type="primary"
                  style="width: 115px"
                  class="btnAdd"
                  @click="add"
                >
                  新增
                </NButton>
                <NButton
                  tertiary
                  type="error"
                  style="width: 115px"
                  @click="BatchDelete"
                  v-if="!editId"
                >
                  批量删除
                </NButton>
              </NSpace>
            </NSpace>
            <div
              class="link_content"
              v-if="props?.typeShow != 1 && $route.path != '/collection/process/pillManage/detail'"
            >
              <div
                class="link_item"
                :key="i.id"
                v-for="i in configData"
              >
                <img
                  :src="preUrlImg + i.code + '.png'"
                  :onerror="imgDefault"
                />
                <div>
                  <div style="margin-left: 10rem">{{ i.value }}件</div>
                  <div style="margin-left: 10rem">{{ i.label?.slice(0, 15) }}</div>
                </div>
              </div>
              <NPopover
                trigger="click"
                :overlap="false"
                raw
                :show-arrow="false"
                v-if="otherConfigData.length > 0"
              >
                <template #trigger>
                  <div
                    class="link_item"
                    style="justify-content: center; cursor: pointer"
                    v-if="otherConfigData.length > 0"
                  >
                    更多
                  </div>
                </template>
                <div class="link_content">
                  <div
                    class="link_item1"
                    v-for="i in otherConfigData"
                    :key="i.id"
                  >
                    <img
                      style="height: 35rem"
                      :src="preUrlImg + i.code + '.png'"
                      :onerror="imgDefault"
                    />
                    <div>
                      <div style="margin-left: 10rem">{{ i.value }}件</div>
                      <div style="margin-left: 10rem">{{ i.label?.slice(0, 15) }}</div>
                    </div>
                  </div>
                </div>
              </NPopover>
            </div>
            <!-- <TableView class="table">
              <template #table="props"> -->
            <div class="table">
              <NDataTable
                v-bind="props"
                :bordered="false"
                :columns="columns"
                :data="tableData"
                :rowKey="rowKey"
                :checked-row-keys="deleteId"
                @update:checked-row-keys="rowKeysChange"
              />
            </div>

            <!-- </template>
              <template #pagination> -->
            <NPagination
              show-size-picker
              show-quick-jumper
              :page-sizes="paginationReactive.pageSizes"
              :item-count="paginationReactive.itemCount"
              :page="paginationReactive.page"
              :page-size="paginationReactive.pageSize"
              @update:page="paginationReactive.onChange"
              @update:page-size="paginationReactive.onUpdatePageSize"
              :suffix="() => '页'"
            >
              <template #prefix>
                <span style="font-size: 14px">共{{ paginationReactive.itemCount }}条</span>
              </template>
            </NPagination>
            <!-- </template>
            </TableView> -->
            <div v-if="editId && props.typeShow != 1">
              <div class="topTitle">审批信息</div>
              <div class="approve">
                <div class="box">
                  <span>审批状态</span>
                  <span style="font-size: 20rem">{{ form.workflowInfoVo?.status }}</span>
                </div>
                <div class="box">
                  <span>审批流程</span>
                  <div style="color: #5fb17f; font-size: 20rem; font-weight: 500; display: flex">
                    <div
                      v-for="(item, index) in form.workflowInfoVo?.workflowList"
                      :key="index"
                    >
                      <span :style="{ textDecoration: item.value ? 'underline' : 'none' }">
                        {{ item.key }}
                      </span>
                      <span v-if="index != form.workflowInfoVo?.workflowList.length - 1">→</span>
                    </div>
                  </div>
                </div>
              </div>
              <div class="topTitle">审批记录</div>
              <div class="table">
                <NDataTable
                  :bordered="false"
                  :columns="columns1"
                  :data="tableData1"
                  :pagination="false"
                  striped
                  :rowKey="rowKey"
                />
              </div>
            </div>
            <NModal
              :auto-focus="false"
              v-model:show="modalVisible"
            >
              <VDialogContent
                @close="modalVisible = false"
                @submit="againDelete"
                title="删除提示"
              >
                <div style="width: 300rem; height: 100rem; text-align: center; line-height: 100rem">
                  您确定要删除吗?
                </div>
              </VDialogContent>
            </NModal>
          </div>
        </NSpin>
      </NScrollbar>
    </div>
  </div>
  </DetailFormProvider>
  <FixedAction>
    <NSpace justify="center">
      <NButton
        style="width: 78px"
        ghost
        @click="goBack"
      >
        {{ !editId ? '取消' : '关闭' }}
      </NButton>
      <NButton
        type="primary"
        style="width: 78px"
        @click="submit"
        :loading="loading"
        v-if="!editId"
      >
        确定
      </NButton>
    </NSpace>
  </FixedAction>
</template>

<style scoped lang="scss">
@mixin CommonFont {
  font-size: 15rem;
  font-family: PingFangSC, PingFang SC;
  font-weight: 400;
  color: #333333;
}

.main {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  overflow: hidden;

  .bd-card {
    padding: 20rem;
    background-color: #e1e1e1;
  }

  .link_content {
    width: 100%;
    display: flex;
    margin-bottom: 10rem;

    .link_item {
      width: 175rem;
      height: 68rem;
      background: #e6e6e6;
      border-radius: 6rem;
      border: 1rem solid #ececec;
      display: flex;
      align-items: center;
      padding-left: 5rem;
      text-decoration: none;
      color: initial;

      img {
        display: block;
        width: 35rem;
        height: 35rem;
        border-radius: 50%;
      }
    }
  }

  .link_item {
    width: 175rem;
    height: 68rem;
    background: #e6e6e6;
    border-radius: 6rem;
    border: 1rem solid #ececec;
    display: flex;
    align-items: center;
    padding-left: 5rem;
    text-decoration: none;
    color: initial;
  }

  img {
    display: block;
    width: 35rem;
    height: 35rem;
    border-radius: 50%;
  }

  .form_content {
    width: 100%;
    height: 100%;
    padding: 20rem 20rem 0;

    .topTitle {
      font-size: 22px;
      font-family: PingFangSC, PingFang SC;
      font-weight: 500;
      color: #5fb17f;
      margin-bottom: 10rem;
    }

    .inputWH {
      width: 300rem;
    }

    .inputWHmin {
      width: 150rem;
    }

    .content {
      display: flex;
      flex-direction: column;
      width: 100%;
      height: 100%;
      padding: 18rem 33rem 120rem;
      overflow-y: scroll;
      background-color: #ebeceb;
      @include CommonFont;
    }
  }

  .approve {
    display: flex;
    width: 100%;
    margin-bottom: 20rem;
    border-bottom: 1px dashed #bc9e70;

    .box {
      display: flex;
      flex-direction: column;
      justify-content: center;
      min-width: 100rem;
      width: auto;
      height: 90rem;
      border-radius: 4px;
      border: 1px solid #d9d9d9;
      padding: 12rem;
      margin-right: 10rem;
      margin-bottom: 20rem;

      span:first-child {
        font-size: 16rem;
      }

      span:last-child {
        font-weight: 500;
        color: #5fb17f;
      }
    }
  }

  .link_item2 {
    width: 155rem;
    height: 68rem;
    background: #e6e6e6;
    border-radius: 6rem;
    border: 1rem solid #ececec;
    display: flex;
    align-items: center;
    padding-left: 5rem;
    text-decoration: none;
    color: initial;
  }
}

.link_item1 {
  width: 155rem;
  height: 68rem;
  background: #e6e6e6;
  border-radius: 6rem;
  border: 1rem solid #ececec;
  display: flex;
  align-items: center;
  padding-left: 5rem;
  text-decoration: none;
  color: initial;
}

.content::-webkit-scrollbar {
  display: none;
}

:deep(.n-spin-container) {
  width: 100%;
  height: 100%;
}

:deep(.n-scrollbar-container) {
  width: 100%;
  height: 100%;
}

:deep(.n-scrollbar-content) {
  width: 100%;
  height: 100%;
}

:deep(.n-spin-content) {
  width: 100%;
  height: 100%;
}

//流程样式
.progress {
  width: 100%;
  min-height: 50rem;
  background-color: #d5e2d8;
  border-radius: 5rem;
  padding: 10rem;
  display: flex;
  align-items: center;
  margin-top: 10rem;
}
.progressHint {
  display: flex;
  width: 100%;
  padding: 5px 15px;
}
.iconStyle {
  margin-right: 5rem;
  color: #5fb17f;
}
</style>
